/*********************************************************************
* DESCRIPTION   文件描述
*  GPIO外设的初始化和配置
*  包括GPIO引脚的配置、输入输出模式设置等
*  该文件包含了GPIO相关的函数声明和宏定义
*/
/*********************************************************************
 * INCLUDES
 */
#include "bsp_gpio.h"

/*********************************************************************
 * LOCAL FUNCTIONS
 */
static void bsp_input_pin_init()
{
    GPIO_InitTypeDef GPIO_InitStruct = {0};

    /* 使能GPIOC时钟 */
    KEY1_GPIO_CLK_ENABLE();
    KEY2_GPIO_CLK_ENABLE();

    /* 配置PC13引脚为输入模式 */
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
    GPIO_InitStruct.Pull = GPIO_PULLUP;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; // 高速
    GPIO_InitStruct.Pin = KEY1_PIN; 
    HAL_GPIO_Init(KEY1_PORT, &GPIO_InitStruct);         // 初始化GPIO1

    GPIO_InitStruct.Pin = KEY2_PIN; 
    HAL_GPIO_Init(KEY2_PORT, &GPIO_InitStruct);         // 初始化GPIO2


}

static void bsp_output_pin_Init(void)
{
    
}

/*********************************************************************
 * PUBLIC FUNCTIONS
 */


/*********************************************************************
 * @Function: bsp_gpio_init
 * @brief  GPIO外设初始化函数
 * @param  None
 * @retval None
 */
void bsp_gpio_init(void)
{
    bsp_input_pin_init();
    bsp_output_pin_Init();
}

/****************************************************END OF FILE****************************************************/
